博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
移动web开发常用JavaScript代码(转)
阅读量:5812 次
发布时间:2019-06-18

本文共 3899 字,大约阅读时间需要 12 分钟。

转载: http://mobile.51cto.com/web-321960.htm

1.如果网页是在iPhone或Android浏览器中查看,则在主体元素中添加“iPhone”或“Android” 类名

Javascript代码

if (navigator.userAgent.match(/iPhone/i)) {       $('body').addClass('iPhone');   } else if (navigator.userAgent.match(/Android/i)) {            $('body').addClass('Android');   }

iPhone用户浏览示例:

  • Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A537a Safari/419.3
  • Mozilla/5.0 (iPhone; U; XXXXX like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A477d Safari/419.3

Android用户浏览示例:

  • Mozilla/5.0 (Linux; U; Android 2.2; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
  • Mozilla/5.0 (Linux; U; Android 1.6; en-gb; Dell Streak Build/Donut AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/ 525.20.1
  • Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; HTC Desire 1.19.161.5 Build/ERE27) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17
  • Mozilla/5.0 (Linux; U; Android 2.2; en-us; DROID2 GLOBAL Build/S273) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
  • Mozilla/5.0 (Linux; U; Android 2.2; en-gb; GT-P1000 Build/FROYO) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
  • Mozilla/5.0 (Linux; U; Android 2.1-update1; de-de; E10i Build/2.0.2.A.0.24) AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Mobile Safari/530.17

2. 移除浏览器地址栏

window.scrollTo(0, 1);

3. 防止网页触摸滚动

notouchmove = function(event) {       event.preventDefault();   }   
...

4. 当横向浏览时显示信息

var updateorientation = function (){       var classname = '',      top = 100;    switch(window.orientation){          case 0: classname += "normal";break; case -90:classname += "landscape";break; case 90:classname += "landscape";break;     }    if (classname == 'landscape') {         if ($('#overlay').length === 0) {            window.scrollTo(0, 1);            $('body').append('
Landscape view is not supported for this page.
'); } } else { $('#overlay').remove(); }}; Usage: var supportsOrientationChange = "onorientationchange" in window, orientationEvent = supportsOrientationChange ? "orientationchange" : "resize"; window.addEventListener(orientationEvent, function() { updateorientation(); }, false);

5.显示部分描述信息,当点击时显示完整信息

var truncatedesc = function(trunc, len) {     if (trunc) {        var org = trunc;        if (trunc.length > len) {        trunc = trunc.substring(0, len);          trunc = trunc.replace(/w+$/, '');         trunc = '' + trunc;        trunc += '...';        trunc += '';       }       $('.truncated').live("touchstart touchend", function() {         $(this).closest('div').find('.original').show();         $(this).closest('div').find('.truncated').hide();        return false;         });        return trunc;     }  };   Usage: truncatedesc(item.description, 100);

6. 收到成功的Ajax请求时,重定向到另一个页面(jQuery mobile)

var ajaxurl = ‘http://…’; // Your web service URL  $.ajax({    url: ajaxurl,      type: 'GET',      processData: false,      contentType: "application/json",      dataType: "jsonp",      success: function(data) {           $.mobile.changePage("results.html");     },       error: function() {           alert('Error!');     }   });

7. 从列表视图的链接中删除活动状态(jQuery Mobile)

$('div').live('pageshow', function (event, ui) {    $('[data-role=listview] li').removeClass("ui-btn-active"); });

8. 从下拉选择中禁用默认的jQuery Mobile样式(jQuery Mobile)

$(document).bind("mobileinit", function(){       $.mobile.page.prototype.options.keepNative = "select";   });

9. 动态更新列表视图(jQuery mobile)

var output  = '
  • ' + item.title + ''; output += '

    ' + item.title + '

    '; output += '
  • '; $('#mylistul').append(output).listview('refresh');

    10. 动态添加表单输入和应用默认样式(jQuery Mobile)

    var html = '';   $('#searchform').append(html);   $('#suburb').textinput();

     

    你可能感兴趣的文章
    Windows 下最佳的 C++ 开发的 IDE 是什么?
    查看>>
    软件工程师成长为架构师必备的十项技能
    查看>>
    python 异常
    查看>>
    百度账号注销
    查看>>
    C# 单机Window 程序 sqlite 数据库实现
    查看>>
    mysql-This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME 错误解决
    查看>>
    BIEE Demo(RPD创建 + 分析 +仪表盘 )
    查看>>
    Cocos2dx 3.0开发环境的搭建--Eclipse建立在Android工程
    查看>>
    基本概念复习
    查看>>
    重构第10天:提取方法(Extract Method)
    查看>>
    Android Fragment使用(四) Toolbar使用及Fragment中的Toolbar处理
    查看>>
    解决pycharm在ubuntu下搜狗输入法一直固定在左下角的问题
    查看>>
    “Info.plist” couldn’t be removed
    查看>>
    多线程day01
    查看>>
    react-native 模仿原生 实现下拉刷新/上拉加载更多(RefreshListView)
    查看>>
    MySQL出现Access denied for user ‘root’@’localhost’ (using password:YES)
    查看>>
    通过Roslyn构建自己的C#脚本(更新版)(转)
    查看>>
    红黑树
    查看>>
    UIImagePickerController拍照与摄像
    查看>>
    python调用windows api
    查看>>